package com.lock.immersive.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.lock.immersive.pojo.domain.Product;
import com.lock.immersive.pojo.domain.ProductItem;
import com.lock.immersive.pojo.dto.ProductCondition;
import com.lock.immersive.pojo.dto.ProductDto;
import com.lock.immersive.pojo.dto.ProductItemDto;
import com.lock.immersive.utils.ResponseApi;

import javax.servlet.http.HttpServletRequest;
import java.util.List;

/**
* @author zhao
* @description 针对表【product】的数据库操作Service
* @createDate 2023-07-02 00:04:03
*/
public interface ProductService extends IService<Product> {

    ResponseApi<Object> insertProduct(ProductDto productDto, HttpServletRequest request);

    ResponseApi<Object> insertProductItem(ProductItemDto productItemDto);

    Page<Product> getProductList(ProductCondition condition);

    ResponseApi<List<ProductItem>> getProductItemList(Integer productId);

    ResponseApi<Object> updateProduct(Product product);

    ResponseApi<Object> updateProductItem(ProductItem productItem);

    ResponseApi<Object> deleteProductList(List<String> ids);

}
